<?php
// +----------------------------------------------------------------------
// | 幕小铺
// +----------------------------------------------------------------------
// | 版权所有 2016~2020 幕小铺科技（大连）有限公司
// +----------------------------------------------------------------------
// | 2020/03/14
// +----------------------------------------------------------------------

namespace app\erp\home;
use app\common\controller\AuthCheck;

/**
 * vip类型管理
 * @package app\cms\admin
 */
class VipType extends AuthCheck{
    /**
     * 首页
     * @author dou<51779987@qq.com>
     * @return json_out(code, message, data)
     */
    public function vip_type_list(){
        //参数接收
        $params 		    = $this->getParams(0);//0 get 1 post
        $user_id    	    = intval(isset($params["user_id"]) ? $params["user_id"] : 0);//操作用户ID

        $vip_name    	    = isset($params["vip_name"]) ? $params["vip_name"] : '';//vip类型名称
        $vip_original_price = isset($params["vip_original_price"]) ? $params["vip_original_price"] : '';//vip原始价格
        $vip_discount_price = isset($params["vip_discount_price"]) ? $params["vip_discount_price"] : '';//vip折扣价
        $month    	        = isset($params["month"]) ? $params["month"] : '';//开通月数
        //数据验证
        $Validate = validate('VipType', 'validate');
        if( !$Validate -> scene('vip_type_index') -> check($params) ){
            json_out(-1001, $Validate -> getError(), []);//验证失败
        }

        //逻辑处理
        $list = controller('VipTypelogic', 'logic') -> index($user_id, $vip_name, $vip_original_price, $vip_discount_price, $month);

        //数据返回
        if($list['code'] == 200){
            json_out($list['code'], $list['message'], $list['data']);
        }else{
            json_out($list['code'], $list['message'], []);
        }
    }

    /**
     * 添加
     * @param vip_name 	            string  类型名称
     * @param vip_original_price 	string  会员原价
     * @param vip_discount_price 	int     会员折扣价
     * @param month 		        string  开通月数
     * @param sort 		            int     排序
     * @author dou<51779987@qq.com>
     * @return json_out(code, message, (int)id)
     */
    public function vip_type_add(){
        //参数接收
        $params 		    = $this->getParams(1);//0 get 1 post
        $user_id    	    = intval(isset($params["user_id"]) ? $params["user_id"] : 0);//操作用户ID
        $vip_name    	    = isset($params["vip_name"]) ? $params["vip_name"] : '';//vip类型名称
        $vip_original_price = isset($params["vip_original_price"]) ? $params["vip_original_price"] : '';//vip原始价格
        $vip_discount_price = isset($params["vip_discount_price"]) ? $params["vip_discount_price"] : '';//vip折扣价
        $month    	        = isset($params["month"]) ? $params["month"] : '';//开通月数
        $sort    	        = intval(isset($params["sort"]) ? $params["sort"] : 100);
        //数据验证
        $Validate = validate('VipType', 'validate');
        if( !$Validate -> scene('vip_type_add') -> check($params) ){
            json_out(-1001, $Validate -> getError());//验证失败
        }

        //逻辑处理
        $list = controller('VipTypelogic', 'logic') -> add($user_id, $vip_name, $vip_original_price, $vip_discount_price, $month, $sort);
        //数据返回
        if($list['code'] == 200){
            json_out($list['code'], '新增成功');
        }else{
            json_out($list['code'], $list['message']);
        }
    }

    /**
     * 编辑
     * @param id 	                int     typeid
     * @param vip_name 	            string  类型名称
     * @param vip_original_price 	string  会员原价
     * @param vip_discount_price 	int     会员折扣价
     * @param month 		        string  开通月数
     * @param sort 		            int     排序
     * @author dou<51779987@qq.com>
     * @return json_out(code, message, (int)id)
     */
    public function vip_type_edit(){
        //参数接收
        $params 		    = $this->getParams(1);//0 get 1 post
        $user_id    	    = intval(isset($params["user_id"]) ? $params["user_id"] : 0);//操作用户ID
        $id = $params["id"] = intval(isset($params["vip_type_id"]) ? $params["vip_type_id"] : 0);
        $vip_name    	    = isset($params["vip_name"]) ? $params["vip_name"] : '';//vip类型名称
        $vip_original_price = isset($params["vip_original_price"]) ? $params["vip_original_price"] : '';//vip原始价格
        $vip_discount_price = isset($params["vip_discount_price"]) ? $params["vip_discount_price"] : '';//vip折扣价
        $month    	        = isset($params["month"]) ? $params["month"] : '';//开通月数
        $sort    	        = intval(isset($params["sort"]) ? $params["sort"] : 100);

        //数据验证
        $Validate = validate('VipType', 'validate');
        if( !$Validate -> scene('vip_type_edit') -> check($params) ){
            json_out(-1001, $Validate -> getError());//验证失败
        }

        //逻辑处理
        $list = controller('VipTypelogic', 'logic') -> edit($user_id,$id, $vip_name, $vip_original_price, $vip_discount_price, $month, $sort);

        //数据返回
        if($list['code'] == 200){
            json_out($list['code'], '编辑成功');
        }else{
            json_out($list['code'], $list['message']);
        }
    }

    /**
     * 删除
     * @param int $id
     * @author dou<51779987@qq.com>
     * @return bool
     */
    public function vip_type_delete(){
        //参数接收
        $params 		= $this->getParams(1);//0 get 1 post
        $user_id    	= intval(isset($params["user_id"]) ? $params["user_id"] : 0);//操作用户ID
        $id = $params["id"] = intval(isset($params["vip_type_id"]) ? $params["vip_type_id"] : 0);
        //数据验证
        $Validate = validate('VipType', 'validate');
        if( !$Validate -> scene('vip_type_delete') -> check($params) ){
            json_out(-1001, $Validate -> getError());//验证失败
        }

        //逻辑处理
        $list = controller('VipTypelogic', 'logic') -> delete($user_id, $id);

        //数据返回
        if($list['code'] == 200){
            json_out($list['code'], '删除成功');
        }else{
            json_out($list['code'], $list['message']);
        }
    }

}